﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp3
{
    class Employee
    {
        //员工A：基本工资 + 工龄*工龄工资 100
        //员工B：基本工资 + 工龄*工龄工资 + 项目总金额*10%
    
        public string Name { get; set; }
        public double BasicSalary { get; set; }
        public int WorkYear { get; set; }
        public double proMoney { get; set; }

        public Employee(string name)
        {
            this.Name = name;
        }

        /// <summary>
        /// 计算A类员工工资
        /// </summary>
        /// <param name="bs">基本工资</param>
        /// <param name="wy">工龄</param>
        /// <returns>A类员工的工资</returns>
        public double GetSalary(double bs,int wy)
        {
            return bs + wy * 100;
        }

        /// <summary>
        /// 计算B类员工工资
        /// </summary>
        /// <param name="bs">基本工资</param>
        /// <param name="wy">工龄</param>
        /// <param name="proMoney">项目总金额</param>
        /// <returns>B类员工的工资</returns>
        public double GetSalary(double bs, int wy,double proMoney)
        {
            return bs + wy*100 + proMoney*0.1;
        }

        public void GetAge(ref int num) 
        {
            num = 666;
        }

        public void GetAge1(out int num)
        {
            num = 666;
        }

        public void Change(int[] array)
        {
            array[0] = 666;
        }

        //数据类型分为两种：
        //值类型，就是基本数据类型，int double byte short
        //值类型的传值方式，是直接拷贝值，就是直接拷贝数据
        //引用类型，比如数组
        //引用类型的传值方式，也是拷贝值，但是它的值是内存地址。

    }
}
